import Vue from 'vue'
import Vuex from 'vuex'
import state from './state';
import mutations from './mutations';
import getters from './getters';
import User from './User';

Vue.use(Vuex)

export default new Vuex.Store({
  // 保存共享数据的data
  state,
  mutations,
  getters,
  modules: {
    user: User
  },
})


/*
1.state： 用来存储变量。在别的页面就可以使用this.$store.state.这里定义的变量，获取到这个变量的值。
2.mutations和actions： 这两个地方的功能都差不多，是用来执行回调函数从而更改状态的地方。不同的是actions可以进行异步操作。
3.getters: 这个东西就相当于组件中的计算属性。
4.modules: 这个是对处理过后的状态进行分类。它里面可以有很多个组成。而每个组成里面都可以有自己的state,mutations,actions, getters.
*/